package com.autumn.sms.service.services;

import com.autumn.sms.service.vo.SendTemplateValue;
import com.autumn.util.function.FunctionOneResult;

/**
 * 缓存服务
 * 
 * @author 老码农
 *
 *         2018-01-12 13:42:42
 */
public interface ICacheService {

	/**
	 * 获取一个发送模板
	 * 
	 * @param serviceId
	 *            服务id
	 * @return
	 *
	 */
	SendTemplateValue getSendTemplate(String serviceId);

	/**
	 * 获取一个发送模板
	 * 
	 * @param serviceId
	 *            服务id
	 * @param fun
	 *            函数
	 * @return
	 *
	 */
	SendTemplateValue getSendTemplate(String serviceId, FunctionOneResult<String, SendTemplateValue> fun);

	/**
	 * 移除发送模板
	 * 
	 * @param serviceId
	 *            服务id
	 *
	 */
	void removeSendTemplate(String serviceId);

	/**
	 * 移除全部发送模板
	 * 
	 */
	void removeAllSendTemplate();
}
